Method and device for controlling further device in wireless communication system

ABSTRACT

There is provided a method for controlling a first device by a control device using BLE (Bluetooth Low Energy) technology in a wireless communication system, the method comprises establishing a BLE connection with the first device; opening a control channel for controlling the first device; determining the first device and a specific control level to the first device, via the control channel, wherein the specific control level indicates a control authority to control the first device by the control device, wherein the specific control level is determined based on a required security level for the first device; and controlling a controllable operation for the first device based on the determined specific control level, wherein the controllable operation is defined based on the determined specific control level.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims a priority to U.S. Provisional Application No.62/321,227 filed on 12 Apr. 2016, the entire content of which is herebyincorporated by reference in its entirety.

BACKGROUND OF THE INVENTION Field of the Invention

The present invention relates to a method and device for controlling afurther device using Bluetooth as a short-range technology in a wirelesscommunication system, and more particularly to a method and device forcontrolling a further device to provide an audio streaming service usingBluetooth Low Energy (BLE) in a wireless communication system.

Related Art

Bluetooth is a short-range wireless technology standard that maywirelessly connect various types of devices and allows them to exchangedata over short distances. To enable wireless communication between twodevices using Bluetooth communication, a user has to perform the processof discovering Bluetooth devices to communicate with and making aconnection request. As used herein, the term “device” refers to anappliance or equipment.

In this case, the user may discover a Bluetooth device according to aBluetooth communication method intended to be used with the Bluetoothdevice using the Bluetooth device, and then perform a connection withthe Bluetooth device.

The Bluetooth communication method may be divided into as a BR/EDRmethod and an LE method. The BR/EDR method may be called a BluetoothClassic method. The Bluetooth Classic method includes a Bluetoothtechnology led from Bluetooth 1.0 and a Bluetooth technology using anenhanced data rate (EDR) supported by Bluetooth 2.0 or a subsequentversion.

A BLE technology applied, starting from Bluetooth 4.0, may stablyprovide information of hundreds of kilobytes (KB) at low powerconsumption. Such a BLE technology allows devices to exchangeinformation with each other using an attribute protocol. The BLE methodmay reduce energy consumption by reducing the overhead of a header andsimplifying the operation.

Some of the Bluetooth devices do not have a display or a user interface.The complexity of a connection, management, control, and a disconnectionbetween various Bluetooth devices and Bluetooth devices using similartechnologies is increasing.

Bluetooth supports a high speed at a relatively low cost with relativelylow power consumption. However, Bluetooth is appropriately used within alimited space because it has a maximum transmission distance of 100 m.

SUMMARY OF THE INVENTION

The present invention has an object to provide a method and device forcontrolling a further device using Bluetooth technology.

It is another object of the present invention to provide a method anddevice for setting a control level for a control device based on a useenvironment of a controlled device.

It is also an object of the present invention to provide a method anddevice for restricting operations controlled by a control device basedon a control level for a control device.

It is still another object of the present invention to provide a methodand device for setting different control levels between control devices.

It may be understood that the technical problems to be solved by thepresent invention are not limited to the above-mentioned technicalproblems. Thus, it may be understood that other technical problems whichare not mentioned above may be apparent from the following descriptionto those skilled in the art to which the present invention belongs.

In a first aspect of the present invention, there is provided a methodfor controlling a first device by a control device using BLE (BluetoothLow Energy) technology in a wireless communication system.

In one embodiment of the first aspect, the method comprises establishinga BLE connection with the first device; opening a control channel forcontrolling the first device; determining a control level with the firstdevice through the control path as a specific control level, wherein thecontrol level indicating control authority for controlling the firstdevice; and controlling a controllable operation of the first devicebased on the determined specific control level, wherein the specificcontrol level is determined based on a required security level for thefirst device, and wherein the controllable operation is defined based onthe determined specific control level.

In one embodiment of the first aspect, the control level is classifiedinto first, second, and third levels based on controllable operationsfor providing a specific service, wherein the first level indicates acontrol level capable of controlling all operations associated with aspecific service provided by the first device, wherein the second levelindicates a control level capable of controlling only an operationrelated to a specific use of the specific service, and wherein the thirdlevel indicates a control level capable of controlling only theoperation for providing the specific service.

In one embodiment of the first aspect, the required security level isdetermined based on an environment in which the first device is used.

In one embodiment of the first aspect, the control level is assigned acontrol priority indicating a priority for controlling the first deviceaccording to each level.

In one embodiment of the first aspect, the first device is a sourcedevice for providing audio data or a sink device for reproducing theaudio data.

In one embodiment of the first aspect, the step of determining thespecific control level further comprises: transmitting a request messageto first device requesting to set the control level of the controldevice to the specific control level; and receiving from the firstdevice a response message indicating that the control level of thecontrol device is set to the specific control level.

In one embodiment of the first aspect, determining the specific controllevel further comprises: sending, by the control device, to the firstdevice a request message to provide the control level for the controldevice; and receiving, by the control device, from the first device aresponse message indicating that the control level for the controldevice has been set to the specific control level.

In one embodiment of the first aspect, determining the specific controllevel further comprises: transmitting a request message to the firstdevice requesting a control level of the control device; and receivingfrom the first device a response message indicating that the controllevel of the control device is set to the specific control level,wherein the specific control level is determined based on the firstcontrol level, wherein the controllable operation is defined based onthe first control level.

In a second aspect of the present invention, there is provided a controldevice to control a first device using BLE (Bluetooth Low Energy)technology in a wireless communication system, the control devicecomprising: a communication unit configured to communicate with thefirst device in a wired or wireless manner; and a processor operativelycoupled to the communication unit, wherein the processor is configuredto: establish a BLE connection with the first device; open a controlchannel for controlling the first device; determine a control level withthe first device through the control path as a specific control level,wherein the control level indicating control authority for controllingthe first device; and control a controllable operation of the firstdevice based on the determined specific control level, wherein thecontrollable operation is defined based on the determined specificcontrol level.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are included to provide a furtherunderstanding of the invention and are incorporated in and constitute apart of this specification, illustrate embodiments of the invention andtogether with the description serve to explain the principles of theinvention. In the drawings:

FIG. 1 shows an example of a wireless communication system using a BLEtechnology according to an embodiment of the present invention.

FIG. 2 shows an example of an internal block diagram of a server deviceand a client device capable of implementing methods according toembodiments of the present invention.

FIG. 3 shows examples of Bluetooth communication architecture to whichmethods according to embodiments of the present invention may beapplied.

FIG. 4 shows an example of a method for the connection procedure of theBLE specification.

FIG. 5 illustrates the characteristics of an audio signal.

FIG. 6 shows an example of a protocol stack of BLE which may use anisochronous channel.

FIG. 7 shows an example of a home ecosystem for applications to which anisochronous channel may be applied.

FIG. 8 shows an example of the type of an isochronous channel.

FIG. 9 shows an example of using an isochronous channel.

FIG. 10 shows an example of an operating state transition according tothe BLE technology.

FIG. 11 shows various examples of isochronous stream transfer through anisochronous channel.

FIGS. 12 and 13 illustrate another example of a data transfer methodusing an isochronous channel.

FIG. 14 shows examples of an isochronous channel packet format which maybe applied to methods according to embodiments of the present invention.

FIG. 15 shows a service usage architecture for each entity according toone embodiment of the present invention.

FIG. 16 is a flowchart illustrating an example of a method for sendingand receiving audio streams through an LE connection to which a methodproposed in this specification may be applied.

FIG. 17 is a flowchart illustrating another example of a method forsending and receiving audio streams through an LE connection to which amethod proposed in this specification may be applied.

FIG. 18 is a flowchart illustrating an example of a method for sendingand receiving audio streams in a BLE non-connection state to which amethod proposed in this specification may be applied.

FIG. 19 is a flowchart illustrating an example of a method for sendingand receiving audio streams in a BLE non-connection state to which amethod proposed in this specification may be applied.

FIG. 20 shows a flow chart of a method for providing audio streams via aBLE connection in accordance with one embodiment of the presentinvention.

FIG. 21 shows a method for providing audio streams in accordance withanother embodiment of the present invention.

FIG. 22 shows types of messages that the control devicetransmits/receives to/from the source device or the sink deviceaccording to one embodiment of the present invention.

FIG. 23 shows a method for providing audio streams according to oneembodiment of the present invention.

FIG. 24 is a diagram illustrating an example of required security levelsbased on device types according to one embodiment of the presentinvention.

FIG. 25 is a diagram illustrating an example of control levels based ondevice use environment types according to one embodiment of the presentinvention.

FIG. 26 is a conceptual diagram showing accesses of a control device toa source device or a sink device according to one embodiment of thepresent invention.

FIG. 27 is a diagram illustrating an example of connections from anaudio source to an audio sink via an audio controller according to oneembodiment of the present invention.

FIG. 28 is a flowchart illustrating an example of a method for setting acontrol level for an audio controller according to one embodiment of thepresent invention.

FIG. 29 is a flowchart illustrating another example of a method forsetting a control level for an audio controller according to oneembodiment of the present invention.

FIG. 30 is a flowchart illustrating still another example of a methodfor setting a control level for an audio controller according to oneembodiment of the present invention.

DESCRIPTION OF EXEMPLARY EMBODIMENTS

Hereinafter, the present invention is described in more detail withreference to appended drawings.

A suffix, such as “module” and “unit” introduced in the descriptionherein, is assigned merely to facilitate description of this document,and the “module” and “unit” may be used interchangeably.

In this document, a device refers to a device capable of wirelesscommunication, including a mobile phone, such as a smart phone, a tabletPC, a desktop computer, a notebook, and television, such as smart TV andIPTV.

Hereinafter, embodiments of the present invention are described indetail with reference to the accompanying drawings and descriptioncontained in the drawings, but the technical scope of the presentinvention is not restricted by the embodiments.

Wherever possible, general terms widely known to the public have beenchosen as long as the terms do not obscure their technical functionsintended in the present invention; however, those terms may be changeddepending on the intention of those skilled in the art, practices, orthe advent of a new technology.

In some cases, specific terms are chosen arbitrarily; in that case, aspecific meaning of a corresponding term is described in a correspondingdescription.

Therefore, the terms used in this document should be interpreted on thebasis of their actual meanings and description throughout the documentrather than the immediate names of the terms.

FIG. 1 shows an example of a wireless communication system using a BLEtechnology according to an embodiment of the present invention.

The wireless communication system 100 includes at least one serverdevice 110 and at least one client device 120.

The server device and the client device perform Bluetooth communicationusing Bluetooth low energy (hereinafter referred to as “BLE”, forconvenience sake) technology.

First, compared to a Bluetooth basic rate/enhanced data rate (BR/EDR)technology, the BLE technology requires a relatively small duty cycle.Products based on the BLE technology may be manufactured at a low cost,and may require very small power consumption at a low speed datatransfer rate. The products may operate more than one year with a coincell battery.

Furthermore, the BLE technology simplifies a connection procedurebetween devices and requires a smaller packet size than the BluetoothBR/EDR technology.

Features of the BLE technology may be summarized as follows: (1) thenumber of RF channels is 40, (2) a data transfer rate of 1 Mbps issupported, (3) a star topology is used, (4) latency is 3 ms, (5) amaximum current is less than 15 mA, (6) output power is less than 10 mW(10 dBm), and (7) major application fields include mobile phones, watch,sports, health-care, sensor, and device control.

The server device 110 may operate as a client device in a relationshipwith a different device. Likewise, the client device may operate as aserver device in a relationship with a different device. In other words,in a BLE communication system, a device may operate as a server deviceor a client device. In some cases, a device may operate as a serverdevice and a client device at the same time.

The server device 110 may be called a data service device, masterdevice, master, server, conductor, host device, audio source device, orfirst device. The client device may be called a slave device, slave,client, member, sink device, audio sink device, or second device.

The server device and the client device form a main part of a wirelesscommunication system, and the wireless communication system may includeother elements in addition to the server device and the client device.

The server device refers to a device which receives data from a client,directly performs communication with the client device. When receiving adata request from the client device, the server device provides data tothe client device through a response.

Furthermore, the server device sends a notification message andindication message to the client device to provide information to theclient device. Furthermore, when transmitting an indication message tothe client device, the server device receives a confirm messagecorresponding to the indication message from the client device.

Furthermore, the server device may provide information to the userthrough a display unit or receive a request input from the user througha user input interface while transmitting and receiving notification,indication, and confirm messages to and from the client device.

Furthermore, the server device may read data from a memory unit or writenew data to the corresponding memory while transmitting and receivingmessages to and from the client device.

Furthermore, one server device may be connected to a plurality of clientdevices and may be easily connected to client devices again usingbonding information.

The client device 120 refers to a device which requests information anddata transmission from a server device.

The client device receives data from the server device through anotification message and indication message. When receiving anindication message from the server device, the client device sends aconfirm message to the server device.

Like the server device, the client device may provide information to auser through a display unit or may receive an input from the userthrough a user input interface while transmitting and receiving messagesto and from the server device.

Furthermore, the client device may read data from the memory unit orwrite new data into the memory unit while transmitting and receivingmessages to and from the server device.

Hardware components, such as the display unit, user input interface, andmemory unit of the server device or client device, are described indetail with reference to FIG. 2.

Furthermore, the wireless communication system may form a personal areanetwork (PAN) using a Bluetooth technology. For example, the wirelesscommunication system may exchange files and documents in a prompt andsafe manner by forming a private piconet among devices.

A BLE device may operate in order to support various Bluetooth-relatedprotocols, profiles, and processes.

FIG. 2 shows an example of the internal block diagram of a server deviceand client device capable of implementing methods according toembodiments of the present invention.

The server device may be connected to at least one client device.

Furthermore, in some embodiments, the internal block diagram of eachdevice may further include other elements (or modules, blocks or units),and some of the elements of FIG. 2 may be omitted.

As shown in FIG. 2, the server device includes a display unit 111, auser input interface 112, a power supply unit 113, a processor (orcontroller) 114, a memory unit 115, a Bluetooth interface 116, anotherinterface 117, and a communication unit (or transmission/reception unit)118.

The display unit 111, user input interface 112, power supply unit 113,processor 114, memory unit 115, Bluetooth interface 116, anotherinterface 117, and communication unit 118 are functionallyinterconnected so as to perform a method according to an embodiment ofthe present invention.

Furthermore, the client device includes a display unit 121, a user inputinterface 122, a power supply unit 123, a processor 124, a memory unit125, a Bluetooth interface 126, and a communication unit (ortransmission/reception unit) 127.

The display unit 121, user input interface 122, power supply unit 123,processor 124, memory unit 125, Bluetooth interface 126, andcommunication unit 127 are functionally interconnected so as to performa method according to an embodiment of the present invention.

The Bluetooth interface 116, 126 refers to a unit (or module) capable oftransmitting a request/response, command, notification,indication/confirm message, or data between devices using the Bluetoothtechnology.

The memory 115, 125 is implemented in various types of devices andrefers to a unit in which various data is stored.

The processor 114, 124 refers to a module for controlling an overalloperation of the server device or the client device, and controls theserver device or the client device in order in order to request thetransmission of a message through the Bluetooth interface or otherinterface and to process a received message.

The processor 114, 124 may be represented by a controller or a controlunit.

The processor 114, 124 may include application-specific integratedcircuits (ASICs), other chipsets, logical circuits and/or dataprocessing devices.

The memory 115, 125 may include read-only memory (ROM), random accessmemory (RAM), flash memory, a memory card, a storage medium and/or otherstorage devices.

The communication unit 118, 127 may include a baseband circuit forprocessing a radio signal. If an embodiment is implemented in the formof software, the aforementioned method may be implemented by a module(process or function) which performs the aforementioned function. Themodule is stored in the memory and is performed by the processor.

The memory 115, 125 may be installed inside or outside the processor114, 124 and may be connected to the processor 114, 124 through variouswell-known means.

The display unit 111, 121 refers to a module for providing statusinformation about a device and message exchange information to a userthrough a display.

The power supply unit 113, 123 refers to a module for receiving externalor internal power under the control of the controller and for supplyingpower for the operation of each element.

As described above, BLE technology is characterized by a small dutycycle, and considerably reduces power consumption at a low data transferrate. Accordingly, the BLE technology is capable of supplying power forthe operation of each element even with small output power (which isless than 10 mW (10 dBm)).

The user input interface 112, 122 refers to a module for providing auser input, such as a display button to the controller, so that the usermay control the operation of a device.

FIG. 3 illustrates an example of Bluetooth communication architecture towhich methods according to embodiments of the present invention may beapplied.

Specifically, FIG. 3 shows an example of an architecture of Bluetooth LE(Low Energy).

As shown in FIG. 3, the BLE structure includes a controller stackcapable of processing a wireless device interface for which timing iscritical and a host stack capable of processing high level data.

The controller stack may also be called a controller. In order to avoidconfusion with the processor, that is, an internal element of the devicedescribed with reference to FIG. 2, however, the controller stack may bepreferably used below.

First, the controller stack may be implemented using a communicationmodule which may include a Bluetooth wireless device and a processormodule which may include a processing device, such as a microprocessor.

The host stack may be implemented as part of an OS operating on theprocessor module or as a package instance on an OS.

In some cases, the controller stack and the host stack may operate ormay be performed on the same processing device within the processormodule.

The host stack includes a generic access profile (GAP) 310, GATT basedprofiles 320, a generic attribute profile (GATT) 330, an attributeprotocol (ATT) 340, a security manager (SM) 350, and a logical linkcontrol and adaptation protocol (L2CAP) 360. The host stack is notlimited to the aforementioned composition, but may include variousprotocols and profiles.

The host stack multiplexes various protocols and profiles provided bythat Bluetooth specification using the L2CAP.

First, the L2CAP 360 provides one bilateral channel for sending data toaccording to a specific protocol or specific profile.

The L2CAP is capable of multiplexing data between upper layer protocols,segmenting or reassembling packages, and managing multicast datatransmission.

BLE uses three fixed channels for respective signaling, a securitymanager, and an attribute protocol.

BR/EDR uses a dynamic channel and supports a protocol servicemultiplexer, retransmission, streaming mode.

The SM 350 authenticates a device, which is a protocol for providing akey distribution.

The ATT 340 relies on a server-client structure, which defines rules fora corresponding device for data access. Six message types are defined:Request, Response, Command, Notification, Indication, and Confirmation.

{circle around (1)} Request and Response message: the Request message isused when a client device requests specific information from a serverdevice, and the Response message is used in response to a Requestmessage, which is transmitted from the server device to the clientdevice.

{circle around (2)} Command message: The Command message is transmittedfrom a client device to a server device in order to indicate a commandfor a specific operation, but the server device does not send a responseto a Command message to the client device.

{circle around (3)} Notification message: A server device sends thismessage to a client device in order to provide notification of an event,but the client device does not send a confirmation message to the serverdevice in response to a Notification message.

{circle around (4)} Indication and Confirm message: A server devicesends this message to a client device in order to provide notificationof an event. Unlike in the Notification message, the client device sendsa Confirm message to the server device in response to an Indicationmessage.

The GAP is a layer newly implemented to support the BLE technology, andis used to control the selection of a role for communication between BLEdevices and a multi-profile operation.

The GAP is mainly used for device discovery, connection establishment,and security. That is, the GAP defines a method for providinginformation to a user and also defines the following attribute types.

{circle around (1)} Service: A combination of actions related to data,and it defines the basic operation of a device.

{circle around (2)} Include: Define a relationship between services.

{circle around (3)} Characteristics: A data value used by a service

{circle around (3)} Behavior: A format that may be readable by acomputer, which is defined by a Universal Unique Identifier (UUID) and avalue type.

The GATT-based profiles are dependent on the GATT and are mainly appliedto BLE devices. The GATT-based profiles may include Battery, Time,FindMe, Proximity, Object Delivery Service and so on. More specificdescriptions of the GATT-based profiles are as follows.

Battery: A method for exchanging battery information.

Time: A method for exchanging time information.

FindMe: It provides an alarm service according to the distance.

Proximity: A method for exchanging battery information.

The GATT may be used as a protocol by which to describe how the ATT isutilized at the time of composing services. For example, the GATT may beused to define how the ATT profiles are grouped together with servicesand to describe characteristics associated with the services.

Therefore, the GATT and the ATT describe device statuses and services,and how features are associated with each other and how they are used.

The controller stack includes a physical layer 390, a link layer 380,and a host controller interface 370.

The physical layer 390 (or a wireless transmission and reception module)sends and receives radio signals of 2.4 GHz, and uses GFSK modulationand frequency hopping utilizing 40 RF channels.

The link layer 380 sends or receives Bluetooth packets.

Furthermore, the link layer establishes a connection between devicesafter performing the advertising and scanning function using threeadvertising channels, and provides a function of exchanging a maximum of42 bytes of data packets through 37 data channels.

The host controller interface (HCI) provides an interface between thehost stack and the controller stack so that the host stack may providecommands and data to the controller stack and the controller stack mayprovide events and data to the host stack.

Hereinafter, the procedure of BLE is described briefly.

The BLE procedure includes a device filtering procedure, an advertisingprocedure, a scanning procedure, a discovering procedure, and aconnecting procedure.

Device Filtering Procedure

The device filtering procedure functions to reduce the number of deviceswhich perform responses to requests, commands, or notification in thecontroller stack.

All of devices may not need to respond to received requests.Accordingly, the controller stack reduces the number of transmittedrequests so that power consumption can be reduced in the BLE controllerstack.

An advertising device or a scanning device may perform the devicefiltering procedure in order to restrict the number of devices whichreceive advertisement packets, scan requests, or connection requests.

In this case, the advertising device refers to a device which sends anadvertisement event, that is, a device which performs advertisement, andis also called an advertiser.

A scanning device refers to a device which performs scanning, that is, adevice which sends a scan request.

In the BLE specification, if a scanning device receives part ofadvertisement packets from an advertising device, the scanning devicehas to send a scan request to the advertising device.

If the transmission of a scan request is not required as the devicefiltering procedure is used, however, the scanning device may ignoreadvertisement packets transmitted by an advertising device.

The device filtering procedure may be used even in the connectionrequest procedure. If device filtering is used for the connectionrequest procedure, the need for sending a response to a connectionrequest may be made unnecessary by ignoring the connection request.

Advertising Procedure

An advertising device performs an advertisement procedure to performnon-directional broadcast using the devices within the range of theadvertising device.

In this case, the non-directional broadcast refers to broadcast in alldirections rather than broadcast in specific directions.

Unlike the non-directional broadcast, the directional broadcast refersto broadcast in a specific direction. Non-directional broadcast isperformed without involving a connection procedure between devices in alistening state (hereinafter referred to as a “listening device”).

The advertising procedure is used to establish a BLE to a nearbyinitiating device.

In some embodiments, the advertising procedure may be used to providethe periodic broadcast of user data to scanning devices which performlistening through an advertising channel.

In the advertising procedure, all of advertisements (or advertisementevents) are broadcasted through an advertising physical channel.

An advertising device may receive a scan request from a listening devicewhich performs a listening operation in order to obtain additional userdata from the advertising device. In response to the scan request, theadvertising device sends a response to the listening device which hassent the scan request through the same advertising physical channelthrough which the advertising device has received the scan request.

While broadcast user data sent as part of advertising packets formsdynamic data, scan response data is static for the most part.

An advertising device may receive a connection request from aninitiating device through an advertising (or broadcast) physicalchannel. If the advertising device has used a connectable advertisementevent and the initiating device has not been filtered by a filteringprocedure, the advertising device stops an advertisement and entersconnected mode. The advertising device may resume the advertisementafter entering the connected mode.

Scanning Procedure

A device performing a scan operation, that is, a scanning device,performs a scanning procedure in order to listen to the non-directionalbroadcast of user data from advertising devices which use an advertisingphysical channel.

In order to request additional user data, a scanning device sends a scanrequest to an advertising device through an advertising physicalchannel. In response to the scan request, the advertising deviceincludes additional user data requested by the scanning device in a scanresponse and sends the scan response to the scanning device through theadvertising physical channel.

The scanning procedure may be used while a scanning device is connectedto another BLE device in a BLE piconet.

If a scanning device receives a broadcast advertising event and stays ininitiator mode where a connection request may be initiated, the scanningdevice may initiate BLE for an advertising device by sending aconnection request to the advertising device through an advertisingphysical channel.

If a scanning device sends a connection request to an advertisingdevice, the scanning device stops the entire scanning for additionalbroadcast and enters connected mode.

Discovering Procedure

Devices capable of Bluetooth communication (hereinafter referred to as“Bluetooth devices”) perform an advertising procedure and a scanningprocedure in order to discover devices around the Bluetooth devices ordevices to be discovered by other devices within a given area.

The discovering procedure is performed in an asymmetric manner. ABluetooth device searching for another Bluetooth device nearby is calleda discovering device, and performs listening in order to search fordevices that advertise advertisement events that may be scanned. ABluetooth device which may be discovered and used by another device iscalled a discoverable device. A discoverable device actively broadcastsan advertisement event so that other devices can scan the discoverabledevice through an advertising (or broadcast) physical channel.

Both of the discovering device and the discoverable device may alreadyhave been connected to other Bluetooth devices in a piconet.

Connecting Procedure

A connecting procedure is asymmetric. In the connecting procedure, whilea particular Bluetooth device performs an advertising procedure, otherBluetooth devices need to perform a scanning procedure.

In other words, the advertising procedure may be a primary task to beperformed, and as a result, only one device may respond to anadvertisement. After receiving a connectable advertisement event from anadvertising device, the connecting procedure may be initiated by sendinga connection request to the advertising device through an advertising(or broadcast) physical channel.

Operation statuses defined in the BLE technology, that is, anadvertising state, a scanning state, an initiating state, and aconnection state, are described briefly below.

Advertising State

The link layer (LL) enters the advertising state in a command from ahost (or stack). If the link layer is in the advertising state, the linklayer sends advertising packet data units (PDUs) at advertisementevents.

Each advertisement event includes at least one advertising PDU, and theadvertising PDU is transmitted through an advertising channel index.Each advertisement event may be previously closed if the advertising PDUis transmitted through each advertising channel index, the advertisingPDU is terminated, or the advertising device needs to secure the spacein order to perform other functions.

Scanning State

The link layer enters the scanning state in response to a command from ahost (or stack). In the scanning state, the link layer listens toadvertising channel indices.

The scanning state supports two types: passive and active scanning. Thehost determines a scanning type.

No separate time or advertising channel index is defined to performscanning.

In the scanning state, the link layer listens to an advertising channelindex for “scanWindow” duration. scanInterval is defined as the intervalbetween the start points of two consecutive scan windows.

If there is no scheduling collision, the link layer has to performlistening in order to complete all of the scanIntervals of scanWindowsas commanded by the host. In each scanWindow, the link layer has to scanother advertising channel indices. The link layer uses all of availableadvertising channel indices.

In the case of passive scanning, the link layer is unable to send anypacket, but only receives packets.

In the case of active scanning, the link layer performs listening to theadvertising device to rely on the advertising PDU type by whichadditional information related to the advertising PDUs and advertisingdevice may be requested.

Initiating State

The link layer enters the initiating state in response to a command froma host (or stack).

In the initiating state, the link layer performs listening toadvertising channel indices.

In the initiating state, the link layer listens to an advertisingchannel index for “scanWindow” duration.

Connection State

The link layer enters the connection state when a device makes aconnection request, that is, an initiating device sends a CONNECT_REQPDU to an advertising device or the advertising device receives aCONNECT_REQ PDU from the initiating device.

Establishing a connection may be taken into consideration after the linklayer enters the connection state. However, establishing a connectionwhen the link layer enters the connection state may not need to be takeninto consideration. The only difference between a newly createdconnection and an existing connection is a supervision timeout value fora link layer connection.

When two devices are connected to each other, they play respectivedifferent roles.

A link layer playing the role of a master is called a master device,whereas a link layer playing the role of a slave is called a slavedevice. A master device adjusts timing of a connection event. In thiscase, the connection event denotes the time when the mast device and aslave device are synchronized.

A master device (or central device) is a device that periodically scansa connectable advertising signal in order to establish a connection withother devices (slave or peripheral devices), and requests an appropriatedevice to establish a connection.

Furthermore, once connected to a slave device, a master device sets uptiming and supervises a periodic data exchange.

In this case, the timing may be a hopping rule applied to two deviceswhich exchange data through the same channel.

A slave (or peripheral) device is a device that periodically sends aconnectable advertising signal in order to establish a connection withother devices (master devices).

Therefore, if a master device which has received a connectableadvertising signal sends a connection request, a slave device acceptsthe request and establishes a connection with the master device.

After a slave device establishes a connection with a master device, theslave device periodically exchanges data by hopping a channel accordingto timing specified by the master device.

The packets defined in the Bluetooth interface is described brieflybelow. BLE devices use the packets described below.

Packet Format

The link layer has only one packet format used for both an advertisingchannel packet and a data channel packet.

Each of the packets includes four fields: a preamble, an access address,a PDU, and CRC.

If one packet is transmitted through an advertising physical channel,the PDU may function as an advertising channel PDU. If one packet istransmitted through a data physical channel, the PDU may function as adata channel PDU.

Advertising Channel PDU

The advertising channel PDU includes a 16 bit header and a payload ofvarious sizes.

The PDU type filed of an advertising channel included in the headersupports PDU types defined in Table 1 below.

TABLE 1 PDU Type Packet Name 0000 ADV_IND 0001 ADV_DIRECT_IND 0010ADV_NONCONN_IND 0011 SCAN_REQ 0100 SCAN_RSP 0101 CONNECT_REQ 0110ADV_SCAN_IND 0111-1111 Reserved

Advertising PDU

The following advertising channel PDU types are called advertising PDUsand are used for specific events.

ADV_IND: a connectable non-directional advertisement event

ADV_DIREC_IND: a connectable directional advertisement event

ADV_NONCONN_IND: a non-connectable non-directional advertisement event

ADV_SCAN_IND: a non-directional advertisement event that may be scanned

The PDUs are transmitted by the link layer in the advertising state andare received by the link layer in the scanning state or initiatingstate.

Scanning PDUs

The advertising channel PDU type below is called a scanning PDU and isused in the status described below.

SCAN_REQ: transmitted by the link layer in the scanning state andreceived by the link layer in the advertising state.

SCAN_RSP: transmitted by the link layer in the advertising state andreceived by the link layer in the scanning state.

Initiating PDUs

The advertising channel PDU type below is called an initiating PDU.

CONNECT_REQ: transmitted by the link layer in the initiating state andreceived by the link layer in the advertising state.

Data Channel PDUs

The data channel PDU includes a 16 bit header and a payload of varioussizes, and may include a Message Integrity Check (MIC) field.

The procedures, statuses, and packet formats of the BLE technologydescribed above may be applied to perform methods according toembodiments of the present invention.

FIG. 4 shows an example of a method for the connection procedure of theBLE specification.

A server sends an advertisement message through three advertisementchannels (S4010).

The server may be called an advertiser before a connection isestablished and may be called a master after the connection isestablished. Examples of the server include sensors (e.g., temperaturesensors).

Furthermore, the client may be called a scanner before a connection isestablished and may be called a slave after the connection isestablished. The client may be a smart phone, for example.

As described above, Bluetooth communication uses a total of 40 channelsthrough a frequency of 2.4 GHz. Three of the 40 channels areadvertisement channels, which are used for exchanging packets toestablish a connection in addition to various advertising packets.

The remaining 37 channels are data channels which are used for theexchange of data packets after a connection is established.

After receiving the advertisement message, the client may send a scanrequest to the server in order to obtain additional data (e.g., a serverdevice name) from the server.

The server sends a scan response, together with the remaining data, tothe client in response to the scan request.

In this case, the scan request and the scan response are one type of anadvertisement packet which may include only user data of 31 bytes orless.

Therefore, if a data size is larger than 31 bytes, but with largeoverhead from established connection to send data, the data is dividedinto two blocks and transmitted twice using the scan request/scanresponse.

Next, the client sends, to the server, a connection request forestablishing BLE with the server (S4020).

Accordingly, a link layer (LL) connection is established between theserver and the client.

Thereafter, the server and the client perform a security establishmentprocedure.

The security establishment procedure may be construed as secure simplepairing or may be performed with the secure simple pairing beingincluded therein.

In other words, the security establishment procedure may be performedthrough a phase 1 to a phase 3.

More specifically, a pairing procedure (i.e., the phase 1) is performedbetween the server and the client (S4030).

Through the pairing procedure, the client sends a pairing request to theserver, and the server sends a pairing response to the client.

In the phase 2, a legacy pairing or secure connection is performedbetween the server and the client (S4040).

In the SSP phase 3, a key distribution procedure is performed betweenthe server and the client (S4050).

Through the phases, a secure connection is established between theserver and the client, and encrypted data may be transmitted andreceived.

Overview of Isochronous Channel

FIG. 5 shows characteristics of an audio signal.

As shown in FIG. 5, in the case of an audio signal, audio streaming dataor audio data is periodically generated at an idle event interval.

Audio data is generated periodically (or at a specific time interval)according to the characteristics thereof.

In this case, the specific time interval during which audio data isperiodically generated may be represented as an idle event interval.

Audio data is transmitted at an individual idle event interval.

Furthermore, individual audio data may be transmitted throughout part ofor the entire event interval.

As shown in FIG. 5, when audio streaming data generated periodically orregularly is transmitted according to the BLE mechanism, anadvertisement and scanning procedure, a communication procedure, and adisconnection procedure have to be performed whenever the generatedaudio data is transmitted or received.

As shown in FIG. 5, however, since audio data is generated at a regularinterval for most cases, latency needs to be guaranteed with respect tothe transmission of the audio data regardless of the amount of the audiodata.

If the advertisement and scanning procedure, the communicationprocedure, and the disconnection procedure are performed whenever newlygenerated audio data is transmitted, however, a latency problem occursduring the transmission of the audio data.

If the BLE technology rather than the Bluetooth BE/EDR technology isused, high energy efficiency can be achieved because a relatively smallamount of audio data is transmitted through an HA or headset. Asdescribed above, however, great overhead is generated because the datachannel process of the BLE technology involves advertising, connection,etc. whenever data is transmitted. Accordingly, latency absolutelyrequired for the transmission of audio data cannot be guaranteed.

Furthermore, the data channel process of the BLE technology involvessending intermittently generated data only when necessary, therebyimproving energy efficiency by leading a BLE device in a different timeregion to deep sleep. Therefore, it may be difficult to apply the datachannel process of the BLE technology to the transmission of audio datagenerated at a regular interval.

For such a reason, it is necessary to define a new mechanism in whichperiodically generated data, such as audio streams, is transmitted andreceived using the BLE technology.

Hereinafter, a method for sending and receiving data (e.g., audio data)generated at a regular interval using the BLE technology is described indetail.

In other words, a method for newly defining a channel for sending andreceiving (or transceiving) data generated at a regular interval in theBLE technology, additionally defining a mechanism related to thehandling of regular data without affecting energy performance of BLE,and sending data generated at a regular interval is provided below.

The phrases, such as audio streaming data, audio data, audio streaming,and audio stream used in this document, may be construed as providingthe same meaning.

The term “audio data” is hereinafter used to represent the differentterms, for convenience of understanding.

Isochronous Channel and Definition of a Mechanism Related to IsochronousChannel

A new channel, that is, an isochronous channel, is defined to send datagenerated at a regular interval using the BLE technology.

An isochronous channel is used to send isochronous data to devices usingisochronous streams.

Isochronous data refers to data transmitted at a particular timeinterval, that is, periodically or regularly.

In other words, an isochronous channel may represent a channel forsending and receiving periodically generated data, such as audio data,in the BLE technology.

An isochronous channel may be used to send and receive audio data to andfrom a single member, three of one or more coordinated members, or aplurality of members.

Furthermore, an isochronous channel corresponds to an isochronousstream, such as an audio stream, or a flushing channel which may be usedto send and receive important data in other time regions.

Methods using an isochronous channel described later are usedindependently of the advertising channel and data channel defined in theexisting (v4.2 or earlier) BLE technology.

Furthermore, this document additionally defines a new frequency channeland frequency hopping interval for an isochronous channel.

An isochronous channel enables a conductor to send an isochronous streamsuch as flushable data (e.g., time-bound audio data) to one or moremembers using the BLE.

In this case, the conductor may be represented as a master, and themember may be represented as a slave.

Furthermore, an isochronous channel may or may not be configured bysecurity setting.

Furthermore, an isochronous channel may be set up for various topologiesto allow the transmission of an isochronous stream between a singleconductor and a member, between a single conductor and a coordinatedpair of members which generates a stereo audio stream, such as hearingaids or stereo headsets, and between a single conductor and a pluralityof members synchronized with the same isochronous stream(s).

In this case, the member may send data to the conductor through anisochronous channel.

Furthermore, the isochronous channel may support the transmission andreception of shared audio, public audio, and broadcast audio as well asthe transmission and reception of personal audio.

A procedure for setting up an isochronous channel requires thathierarchy of profile level security and reliability requirements satisfyuse cases.

Furthermore, an isochronous channel may be used for variousapplications, by which a plurality of audio sources and sinks may be setup, and complicated topologies may be set up to allow users to regularlychange or share different audio streams.

FIG. 6 shows an example of a protocol stack of BLE which may use anisochronous channel.

Referring to FIG. 6, the protocol stack of BLE which supports anisochronous channel may be different from the protocol stack of FIG. 3.

More specifically, the protocol stack of BLE which supports anisochronous channel further includes an audio middleware layer added tothe protocol stack of FIG. 3.

The audio middleware layer supports an isochronous channel forcontinuous data transmission and reception.

The isochronous channel includes a connection-oriented isochronous (ICO)channel for sending and receiving continuous data, that is, forpoint-to-point transmission, in an LE connection state and aconnectionless isochronous (ICL) channel for sending and receivingcontinuous data, that is, for broadcast transmission, in a BLEnon-connection state.

Continuous data (e.g., audio stream data) may be transmitted andreceived through the ICO and ICL channels of the audio middleware layerof BLE.

FIG. 7 shows an example of a home ecosystem for applications to which anisochronous channel may be applied.

In other words, FIG. 7 shows an example of the space in which aplurality of audio conductors and members to which methods according toembodiments of the present invention may be applied may move aroundinside/outside domains.

As shown in FIG. 7, the existence of various conductors and membersindicate that an isochronous channel is required as a method forproviding notification of the presence of members so that the memberscan obtain information necessary to form the isochronous channel.

An isochronous channel may also be used for the transmission andreception of non-audio data.

A member may use isochronous channels to determine existence ofnotification messages which may include acquisition information fromconductors within the range of BLE communication.

Furthermore, the member may use isochronous channels to receive arequest with respect to control information or service data from one ormore devices acting like a remote controller.

FIG. 8 shows an example of the type of an isochronous channel.

Referring to FIG. 8, the isochronous channel may include a channel forpoint-to-point transmission and a channel for broadcast transmission.

More specifically, FIG. 8(a) shows connection-oriented isochronous (ICO)channels, that is, isochronous channels for point-to-point transmission.In FIG. 8(a), a master device and a slave device are connected throughICO channels, and may send and receive bi-directional data and responsesthereto through the ICO channels.

The master device and the slave device may perform an LE connection(e.g., an ACL connection) in order to form and configure the ICOchannels. In this case, the ACL connection and the roles of the masterdevice and the slave device in the ICO channel are the same.

FIG. 8(b) shows connectionless isochronous (ICL) channels, that is,isochronous channels for broadcast transmission. The ICL channel is achannel for sending and receiving data in a BLE non-connection state.One or more slave devices have been synchronized with respective ICLchannels from a master device in order to receive data.

The ICL channel sends one-way, but does not send a response thereto.

That is, the one or more slave devices are able to only receive datafrom the master device through the ICL channels, but are unable to senddata to the master device through the ICL channels.

An embodiment of the present invention proposes a method for sending andreceiving audio streams such an ICO channel and/or ICL channel.

FIG. 9 shows an example of using an isochronous channel.

In other words, FIG. 9 shows an example in which a pair of HAs isconnected to a plurality of conductors and remote control devicesthrough an isochronous channel.

As shown in FIG. 9, a right HA (HA-R) functions as a conductor thatbroadcasts data through an isochronous channel.

Furthermore, the HA-R may send a control request to all of devices onceconnected to the HA-R, such as the remote controllers of the HA-R,phone, music player, and coordinated left hearing aid (HA-L).

The left HA and/or the right HA may be used as conductors in thescenario as shown in FIG. 9.

FIG. 10 shows an example of operating state transition according to theBLE technology.

As shown in FIG. 10, an isochronous channel (or an ISO channel) mayoperate in conjunction with an advertisement channel and data channel ofthe BLE technology.

Referring to FIG. 10, a BLE device may change the operating state to (1)a first connected state or (2) a second connected state in which data istransmitted and received in an advertisement state.

In this case, the first connected state refers to an operating state inwhich the BLE device sends and receives data through a data channel, andthe second connected state refers to an operating state in which the BLEdevice sends and receives data through an isochronous channel.

The BLE device may change its operating state to the first or secondconnected state depending on the type of data transmitted and receivedto and from devices or a data transmission type.

More specifically, the BLE device generates a data channel from anadvertisement channel operating in the first connected state, and alsogenerates an isochronous channel from an advertisement channel operatingin the second connected state.

Furthermore, if the BLE device changes its operating state from thefirst connected state to the advertisement state, it releases agenerated data channel. If the BLE device changes its operating statefrom the second connected state to the advertisement state, it releasesa generated isochronous channel.

For example, the BLE device changes its operating state from theadvertisement state to the second connected state in order to send andreceive audio data. In other words, the BLE device may send and receiveaudio data through the isochronous channel while it is connected to thesecond connected state.

Furthermore, the BLE device changes its operating state from theadvertisement to the first connected state in order to send and receivedata generated in a random fashion or intermittently.

In other words, the BLE device may send and receive the data through thedata channel in the first connected state.

As shown in FIG. 10, the BLE device makes a transition from theadvertisement state to the first connected state by generating a datachannel, if necessary, and sends and receives data through the generateddata channel.

When the transmission and reception of the data through the data channelis completed, the BLE device closes the generated data channel andreturns to the advertisement state, that is, the advertisement channel.

Likewise, the BLE device makes a transition from the advertisement stateto the second connected state by generating an isochronous channel, ifnecessary, and sends and receives data through the generated isochronouschannel.

When the transmission and reception of the data through the data channelis completed, the BLE device closes the generated isochronous channeland returns to the advertisement state, that is, the advertisementchannel.

As described above, the isochronous channel is generated in order tosend and receive data generated at a regular interval, such as audiodata, while the data channel is generated in order to send and receivedata irregularly or intermittently.

FIG. 11 illustrates various examples of isochronous stream transferthrough an isochronous channel.

FIGS. 11(a) to (d) show various topologies used to send an isochronousstream, and FIGS. 11(a) to (d) show conductors establishing isochronouschannels with the following member(s).

Two members which may receive the same or different isochronous streams(e.g., a mono stream, a joint stereo stream or separate left and rightaudio streams),

Three groups of members, with each group synchronized to a separateisochronous stream,

A single member receiving a single isochronous stream from a singleisochronous channel.

A conductor establishes a plurality of isochronous channels sharingcharacteristics including the anchor point of the isochronous channel,by which members of a conductor may make the anchor points performed atthe same time. Such isochronous streams are called an “ensemble.”

A single isochronous channel which sends a single isochronous stream toa single member may not be an example of the ensemble, where suchpoint-to-point topology may be usually described as being operatedaccording to the unicast scheme when it is used for transmission ofaudio data.

Furthermore, an isochronous channel may be used to broadcast controlinformation to one or more members, to respond to individual broadcasttransmission, or to selectively request more information.

Through the operation described above, the conductor may operate inconjunction with a plurality of remote control devices. As shown in FIG.15, a BLE device may function as a member of an isochronous channel oras the conductor of a different BLE device.

In other words, BLE devices may function as both a conductor and amember in order to establish a plurality of isochronous channels.

FIGS. 12 and 13 illustrate another example of a data transfer methodusing an isochronous channel.

More specifically, FIG. 12 shows an example of a unicast transmissionmethod, and FIG. 16 shows an example of a broadcast transmission method.

First, the unicast transmission method through an isochronous channel isdescribed with reference to FIG. 12.

In the case of the unicast transmission method, devices may operate anisochronous channel selectively for one or more unicast transmissions.

As shown in FIG. 12, a master may unicast the same or different data toa predetermined number of connected or selected slaves.

The master may generate a dual isochronous channel in order to performbilateral communication with slaves, if necessary.

In other words, the master may form a dual isochronous channel bygenerating one isochronous channel along with one slave and the otherisochronous channel along with the slave.

In this case, the generation of the dual isochronous channel mayindicate that a downlink isochronous channel and an uplink isochronouschannel are respectively generated in order to achieve bilateralcommunication between the master and the slave or that isochronouschannels are generated between the master and two or more slaves.

Broadcast transmission through an isochronous channel is described belowwith reference to FIG. 13.

As shown in FIG. 13, broadcast transmission through an isochronouschannel is performed according to multicast transmission differentlyfrom the broadcast transmission method used for most cases (i.e., amethod for sending data to all of devices).

In other words, broadcast transmission through the isochronous channeldefined in the BLE specification refers to broadcasting data only to aslave dependent to a generated isochronous channel.

In other words, the master broadcasts data only to approved slavesthrough an isochronous channel.

Therefore, broadcast transmission through the isochronous channeldefined in the BLE specification should be construed as multicasttransmission towards a specific group.

FIG. 14 shows examples of an isochronous channel packet format which maybe applied to methods according to embodiments of the present invention.

The format of the isochronous channel packet transmitted through anisochronous channel is the same as that shown in FIGS. 14(a) and (b),but the present invention is not limited thereto and may have adifferent format.

As shown in FIG. 14(a), all of isochronous channels may have the packetformat defined in the Bluetooth specification v4.2 supporting anisochronous data PDU of 2 to 257 octets.

FIG. 14(a) shows an example of an extended PDU packet format, and theextended PDU packet format 1410 includes a preamble 1411, an accessaddress 1412, a PDU 2011, and cyclic redundancy check (CRC) 1414.

The preamble may include 1 octet, an access address of 4 octets, a PDUof 2 to 257 octets, and CRC of 3 octets.

FIG. 14(b) shows an example of an isochronous packet, and theisochronous packet (or isochronous channel PDU 1420) may include aheader 1421 of 16 bits and payload 1422 of 0 to 255 octets.

Furthermore, the isochronous packet may include a length field of an 8bit size, which is used to check the length of data located next to theheader.

The data length of the isochronous packet varies depending on the spacebetween isochronous channels and may be limited by a channel parameterimposed by a conductor. The isochronous packet may further include amessage integrity check (MIC) field.

FIG. 15 shows a service usage architecture for each entity according toone embodiment of the present invention. Specifically, FIG. 15(a) showsa terminology to service mapping relationship according to oneembodiment of the present invention. FIG. 15(b) shows a service mappingrelationship within a client-server architecture according to oneembodiment of the present invention.

Referring to FIG. 15(a), a source device may be implemented as a serverthat provides services for Audio-A, Audio-C, and Audio-S. In addition, asink device may be implemented as a server that provides services forAudio-A and Audio-C, and may be implemented as a client for Audio-S.Further, a control device may be implemented as a client for Audio-A andAudio-C.

In addition, the control device may be referred to as an audiocontroller (AC) herein.

In this connection, Audio-A is an audio link that supports advertisingand announcement of audio data. Audio-C is an audio link that supportscontrol and configuration of audio data to be transmitted. Audio-S is anaudio link that supports the transmission of audio streams.

In one embodiment, a service for Audio-A may be a service (e.g., asource device service or a sink device service) provided over an Audio-Alink supporting advertisement and announcement of audio data. A servicefor Audio-C may be a service (e.g., a source device service or a sinkdevice service) provided over an Audio-C link that supports control andconfiguration of audio data to be transmitted. A service for Audio-S maybe a service (e.g., a source device service) provided over an Audio-Slink supporting transmission of audio streams.

Referring to FIG. 15(b), for a certain service, which entity acting as aserver providing the service, and which entity acting as a clientaccessible to the service may be determined.

For example, as for a source device service for Audio-A, it may beconfirmed that the source device operates as a server and the controldevice operates as a client. Further, as for a source device service forAudio-C, it may be confirmed that the source device operates as a serverand the control device operates as a client. Furthermore, as for asource device service for Audio-S, it may be confirmed that the sourcedevice operates as a server and the sink device operates as a client.

In another example, as for a sink device service for Audio-A or Audio-C,it may be confirmed that the sink device operates as a server and thecontrol device operates as a client.

In still another example, as for a metadata service, it may be confirmedthat the source device operates as a server and the control deviceoperates as a client. Further, as for a transmission informationservice, a codec information service, a control device control service,or a volume service, it may be confirmed that the source device or thesink device operates as a server and the control device operates as aclient.

In yet still another example, as for an encryption service among contentprotection services, it may be confirmed that the source device operatesas a server and the control device operates as a client.

For example, as for the metadata service, it may be confirmed that thesource device operates as a server providing the service, and thecontrol device operates as a client accessible to the service. In thisembodiment, it may be confirmed that the sink device is not related tothe metadata service.

FIG. 16 is a flowchart illustrating an example of a method for sendingand receiving audio streams through an LE connection to which a methodproposed in this specification may be applied.

Referring to FIG. 16, the first device 200 that is a slave device, mayestablish an LE connection with the second device 300 that is a masterdevice, may generate an isochronous channel, and may receive audiostream data through the isochronous channel.

A detailed procedure for receiving audio stream data through an LEconnection is described in detail below.

LE connection establishment procedure S16010

The first device 200 may perform an LE connection establishmentprocedure with the second device 300 in order to receive audio streamdata from the second device 300.

In this case, the LE connection establishment procedure may be performedthrough the method described with reference to FIG. 7.

Service Level Connection Establishment Procedure S16020

After establishing an LE connection with the second device 300, thefirst device 200 may perform a service level connection establishmentprocedure.

For example, the first device 200 may perform state synchronizationthrough the service level connection establishment procedure, and mayopen a control channel (i.e., a second channel) in order to control anisochronous channel (i.e., a first channel) for sending and receivingaudio stream data.

In this case, the control channel may be one of BLE data channels.

If the first device 200 is divided into a left device and a right devicelike a headset, the state synchronization means that synchronization isperformed between the left device and the right device and may beperformed through the GATT message of BLE.

After opening the control channel, the first device 200 may perform acodec & transfer parameter negotiation procedure along with the seconddevice 300 (S16030).

Codec & Transfer Parameter Negotiation Procedure S16030

The first device 200 may determine audio stream data and parametersrelated to the transmission and reception of the audio stream datathrough a codec parameter and transport parameter negotiation procedurealong with the second device 300.

More specifically, the first device 200 may send a supported codecparameter and transfer parameter to the second device 300.

The codec parameter may include a codec name (or a codec type), a samplerate indicative of a total number of samples extracted during 1 second,a bit depth indicative of the potential precision of hardware orsoftware which processes audio data in digital audio, a bit rate, aframe length, and audio channel information (e.g., mono, stereo, or dualmode).

The transfer parameter may include maximum transport latency, the numberof audio streams, and an encryption level.

Thereafter, the first device 200 may receive a codec parameter andtransfer parameter, supported by the second device, from the seconddevice 300 and select proper parameters of common parameters.

In an embodiment, the second device 300 may select proper parameters ofthe received codec parameter and transfer parameter and send theselected parameters to the first device 200.

In an embodiment, the second device 300 may send a supported codecparameter and transfer parameter to the first device 200. The firstdevice 200 may select proper parameters of the received parameters andsend them to the second device 300.

Isochronous Connection Establishment Procedure S16040

After selecting proper parameters through the codec & transfer parameternegotiation procedure, the first device 200 and the second device 300may perform an isochronous connection establishment procedure.

Through the isochronous connection establishment procedure, the firstdevice 200 may form an audio stream along with the second device 300 andmay open an isochronous channel for sending and receiving the formedaudio stream.

In this case, the type (i.e., ICO or ICL) of the isochronous channel, achannel ID (CID), a channel map, a connection interval, latency, achannel count, and a retransmission count may be determined through theisochronous connection establishment procedure.

Audio Stream Connection Establishment Procedure S16050

The first device 200 that has opened the isochronous channel may performan audio stream connection establishment procedure along with the seconddevice 300.

The audio stream connection establishment procedure is a procedure forsending and receiving the formed audio stream. The first device 200 mayconfigure (or assign) a role for sending and receiving the formed audiostream to and from the second device 300 through the audio streamconnection establishment procedure.

Furthermore, state synchronization may be performed between the firstdevice 200 and the second device 300. The first device 200 and thesecond device 300 may open an audio link for sending and receiving theformed audio stream.

Thereafter, the first device 200 may receive an audio stream from thesecond device 300 and output the received audio stream to the outsidethrough the output unit.

Through such a method, the first device 200 may determine properparameters for sending, receiving, and playing back audio streams alongwith the second device 300, and may provide an audio streaming servicethrough the determined parameters.

FIG. 17 is a flowchart illustrating another example of a method forsending and receiving audio streams through an LE connection to which amethod proposed in this specification may be applied.

Referring to FIG. 17, unlike in the example of FIG. 16, a service levelconnection establishment procedure may not be performed, but statesynchronization may be performed in an audio stream connectionestablishment procedure.

More specifically, the first device 200 may perform an LE connectionestablishment procedure along with the second device 300 in order toreceive audio stream data from the second device 300 (S17010).

In this case, the LE connection establishment procedure may be performedthrough the method described with reference to FIG. 4.

The first device 200 may open a control channel in order to control anisochronous channel for sending and receiving audio stream data to andfrom the second device 300.

Thereafter, step S17020 and step S17030 are the same as step S16030 andstep S16040 of FIG. 16, and a description thereof is omitted.

The first device 200 that has opened the isochronous channel may performan audio stream connection establishment procedure along with the seconddevice 300 (S17040).

The audio stream connection establishment procedure is a procedure forsending and receiving the formed audio stream. The first device 200 mayconfigure (or assign) a role for sending and receiving the formed audiostream to and from the second device 300 through the audio streamconnection establishment procedure.

Furthermore, state synchronization may be performed between the firstdevice 200 and the second device 300. The first device 200 and thesecond device 300 may perform the state synchronization described atstep S16020 of FIG. 16 through the GATT message.

Furthermore, the first device 200 and the second device 300 may open anaudio link for sending and receiving the audio stream.

Thereafter, the first device 200 may receive an audio stream from thesecond device 300 and output the received audio stream to the outsidethrough the output unit.

FIG. 18 is a flowchart illustrating an example of a method for sendingand receiving audio streams in a BLE non-connection state to which amethod proposed in this specification may be applied.

Referring to FIG. 18, in a BLE non-connection state, audio stream datamay be transmitted and received through an isochronous channel.

More specifically, the second device 300, that is, a master device,sends an advertising message to the first device 200, that is, a slavedevice (S18010).

The advertising message may include metadata by which the type of datatransmittable by the second device 300 through an isochronous channelcan be identified and an identifier indicative of an advertising channelthrough which an extended advertising message capable of obtainingadditional information is transmitted.

The first device 200 may change a channel based on the identifier andreceive the extended advertising message from the second device 300(S18020).

The extended advertising message may include information about a channelthrough which audio stream data is transmitted and the codec parameterand transfer parameter.

Thereafter, the first device 200 may determine parameters for receivingand outputting audio streams based on the received codec parameter andtransfer parameter.

After determining the parameters, the first device 200 may change anexisting channel to a channel through which audio stream data istransmitted, may receive the audio stream data from the second device300 through the isochronous channel, and may output the received audiostream data through the output unit.

Through such a method, audio stream data can be received through anisochronous channel even in the BLE non-connection state.

FIG. 19 is a flowchart illustrating an example of a method for sendingand receiving audio streams in a BLE non-connection state to which amethod proposed in this specification may be applied.

Referring to FIG. 19, a slave device may receive information forreceiving audio stream data from a master device in a BLE non-connectionstate and may provide an audio streaming service.

More specifically, the first device 200, that is, a slave device, maysend an advertising message to the second device 300, that is, a masterdevice. After receiving the advertising message, the second device 300may discover the first device (S19010).

The first device 200 may request synchronization information forsynchronization with the second device 300 from the second device 300through the advertising message.

In response to the advertising message, the second device 300 may sendan extended scan request message, including the synchronizationinformation, to the first device 200 (S19020).

The extended scan request message may include the codec parameter andtransfer parameter in addition to the synchronization information.

Thereafter, the first device 200 may determine parameters for receivingand outputting audio streams based on the received codec parameter andtransfer parameter.

After determining the parameters, the first device 200 may besynchronized with the second device 300, may receive audio stream datafrom the second device 300 through an isochronous channel, and mayoutput the received audio stream data through the output unit (S19030).

FIG. 20 shows a flow chart of a method for providing audio streams via aBLE connection in accordance with one embodiment of the presentinvention. In particularly, FIG. 20 shows one embodiment of a method forproviding a service including audio data using a BLE manner. In afollowing description of FIG. 20, the details as descried above withreference to FIG. 4 will be omitted.

Referring to FIG. 20, a BLE connection may be established between asource device, a control device and a sink device by establishing a BLEconnection between the sink device and the control device, andestablishing a BLE connection between the source device and the controldevice, respectively.

In this connection, each of the BLE connections may be established usingthe method as described above with reference to FIG. 4.

By transmitting a registration request message to the source device andthe sink device in a state in which the BLE connection between thesource device, the control device, and the sink device is established,the control device for controlling the source device and the sink devicemay be registered.

Specifically, the control device registration method may include acontrol path opening procedure (S20010). Specifically, the controldevice may perform a procedure of opening a control path (or channel)for the source device and/or the sink device. In this connection, thecontrol channel may be one of data channels of BLE audio. The controlchannel may be a data channel (or link) for transmission of controlinformation (or data) for control and configuration of the audio data.

In one embodiment, the control device may open the control channel forthe source device and the sink device by registering the control deviceas a remote controller for the source device or the sink device. Forexample, the control device may send a registration request message(Register RC) to the source device and receives a response message tothe registration request message from the source device. In this way,the control device may register the control device as the remotecontroller for the source device. In another example, the control devicemay transmit a registration request message (Register RC) to the sinkdevice, and receive a response message to the registration requestmessage from the sink device. In this way, the control device mayregister the control device as the remote controller for the sinkdevice. Thus, the control device may open the control channel for thesource device and the sink device, and may control each of the sourcedevice and the sink device via the control channel.

Thereafter, when the provision of the audio streams is ended, thecontrol device may be deregistered as the controller for controlling thesource device and the sink device, and, then, the control path may beclosed.

Specifically, the control device deregistration method may include acontrol path closed procedure (S20020). Specifically, the control devicemay perform a procedure of closing the control path (or channel) for thesource device and/or the sink device. In this connection, the controlchannel may be one of data channels of BLE audio. The control channelmay be a data channel (or link) for transmission of control information(or data) for control and configuration of the audio data.

In one embodiment, the control device may close the control channel forthe source device and the sink device by deregistering the controldevice as the remote controller for the source device or the sinkdevice. For example, the control device may send a deregistrationmessage (De-register RC) to the source device, and receive a responsemessage to the deregistration message from the source device. In thisway, the control device may deregister the control device as the remotecontroller for the source device. In another example, the control devicemay send a deregistration message (De-register RC) to the sink device,and receive a response message to the deregistration message from thesink device. In this way, the control device may deregister the controldevice as the remote controller for the sink device. Thus, the controldevice may close the control channel for the source device and the sinkdevice.

In one embodiment, when the source device or the sink device moves outof a preset range, the control device may perform the control pathclosed procedure described above. In this case, the BLE connection maybe disabled based on a predetermined connection timeout. For example,the BLE connection may be disabled when the predetermined connectiontimeout period elapses after the control path is closed. Thereafter,when the source device or the sink device re-enters the preset range,the control device may again enable the BLE connection and perform thecontrol path opening procedure.

FIG. 21 shows a method for providing audio streams in accordance withanother embodiment of the present invention. Specifically, FIG. 21 showshow the sink device reproduces the audio streams under the control ofthe control device when the source device has transmitted the audiostreams in a broadcast or public announcement manner.

Referring to FIG. 21, prior to the audio streams transmission, the BLEconnection procedure and the control path opening procedure between thecontrol device and the sink device may be performed. In this way, thecontrol device may be registered with respect to the sink device. In theembodiment of FIG. 21, the control path opening procedure may not beperformed between the control device and the source device because thesource device transmits the audio streams in the broadcast or publicannouncement manner. That is, registration of the control device withrespect to the source device may be unnecessary.

The source device may transmit an advertisement message. In oneembodiment, the advertisement message may include information about thesource device. For example, the advertisement message may include atleast one of identification information (e.g., audio stream IDinformation) about the source device, language information,synchronization information, transmission parameter information, andcodec parameter information. In one embodiment, the identificationinformation may be a universally unique identifier (UUID) informationabout the audio stream provided from the source device.

After the control device is registered with respect to the sink device,when the control device receives the advertisement message from thesource device, the control device ma generate a control message for thesink device based on the advertisement message. For example, the controldevice may generate a control message associated with receipt of theaudio streams based on the advertisement message. In one embodiment, thecontrol message may include stream ID information about the audiostreams provided from the source device. Thereby, the sink device mayreceive the audio streams from the source device.

FIG. 22 shows types of messages that the control devicetransmits/receives to/from the source device or the sink deviceaccording to one embodiment of the present invention. Specifically, FIG.22 shows types of messages that the control device sends/receivesto/from the source device or the sink device after the control devicehas been registered.

Referring to FIG. 22, the control device may control the source deviceor the sink device by transmitting a control command (or a controlmessage) to the source device or the sink device. Further, the controldevice may receive a response message to the control message from thesource device or the sink device. Furthermore, the control device mayreceive an event message or an indication message from the source deviceor the sink device. The event message may include information about anevent occurring at the source device or the sink device. The indicationmessage may include indication information by the source device or thesink device.

FIG. 23 shows a method for providing audio streams according to oneembodiment of the present invention. Specifically, FIG. 23 shows how theaudio streams are provided under control of the control device after theBLE connection procedure and the control path opening proceduredescribed above have been performed.

Referring to FIG. 23, the method for providing the audio streams mayinclude a control procedure. Specifically, the control device mayperform a procedure for controlling the source device or the sinkdevice. In one embodiment, the control device may control the sourcedevice or the sink device by sending a control command (message) to thesource device or the sink device via the control channel. In this case,the source device or the sink device may perform a correspondingoperation to the control message, and, accordingly, may transmit aresponse message to the control device. As used herein, the controlmessage may be referred to as an audio stream command (CMD).

In one embodiment, the control device may control the source device bytransmitting a first control message to the source device. For example,the control device may control the source device by sending, to thesource device, a first control message (e.g., a streaming executionmessage) for the service (e.g., an audio streaming service) provided bythe source device. In this case, the first control message may includeinformation related to the service (e.g., streaming server addressinformation for streaming execution, etc.).

Thereafter, the source device may perform a corresponding operation (forexample, streaming execution) to the first control message and maytransmit a first response message to the control device. In this case,the first response message may include information (e.g., audio streamID information) for receiving the audio streams provided from the sourcedevice. In one embodiment, the audio stream ID information may beassociated with information about a channel through which the audiostreams are transmitted.

In one embodiment, the control device may control the sink device bytransmitting a second control message to the sink device. For example,the control device can control the sink device by sending, to the sinkdevice, a second control message (e.g., an audio playback start message)for the service (e.g., an audio playback service) provided by the sinkdevice. In one embodiment, the second control message may be a messagegenerated based on the first response message. For example, the secondcontrol message may be a message including the audio stream IDinformation included in the first response message. This allows the sinkdevice to acquire information for receiving the audio streams providedfrom the source device.

Subsequently, the sink device may perform a corresponding operation (forexample, audio playback start) to the second control message, and maytransmit a second response message to the control device. In this case,the second response message may include information on whether or notthe operation based on the second control message is successfullyperformed.

In this way, the control device may control the source device and thesink device by transmitting the first control message to the sourcedevice, receiving the first response message to the first controlmessage from the source device, generating the second control messagebased on the first response message, transmitting the second controlmessage to the sink device, and receiving the second response message tothe second control message from the sink device. This allows the controldevice to control the establishment of the transmission path fortransmission of the audio streams between the source device and the sinkdevice.

In one embodiment, the transmission path formation procedure for audiostream transmission may be performed by at least one of theabove-described isochronous connection establishment and procedure audiostream connection establishment procedures.

In addition, the method for providing the audio streams may include anaudio stream transmitting/receiving procedure. In one embodiment, thesink device may receive the audio stream provided from the source devicebased on the second control message. For example, the sink device mayreceive the audio streams over a channel on which the audio streams arereceived based on the audio stream ID information included in the secondcontrol message. The sink device may then play (or render) the receivedaudio streams.

However, when a plurality of control devices control the source devicethat provides the audio data or the sink device that reproduces theaudio data, a conflict may occur between the control devices.

That is, when each of the control devices controls the same sink deviceor the same source device, operations to be controlled by the controldevices may be different from each other, thereby causing an error inthe operation of the controlled source device or the controlled sinkdevice.

In addition, only a specific control device needs to control the sourcedevice or the sink device, for example, in a secret meeting, etc. Inthis connection, when a control device other than the specific controldevice is allowed to control the same source device or the same sinkdevice, there is a problem that the source device or the sink device maynot be controlled by the specific control device.

Accordingly, in order to solve such a problem, the present inventionproposes a method for setting control levels for the control devices tocontrol the sink device or the source device according to the setcontrol levels.

FIG. 24 is a diagram illustrating an example of required security levelsbased on device types according to one embodiment of the presentinvention.

Referring to FIG. 24, the devices may have different required securitylevels based on environments in which the devices are used respectively.A security problem may occur when a device with a higher requiredsecurity level is controlled by a plurality of control devices.

Specifically, a device (e.g., a smartphone, etc.) that is only availableto a specific user has a lower or no required security level. That is,the device used in a personal environment does not need a specialsecurity level because the specific user manages all devices forreceiving services.

In this connection, since the specific user manages all control devices,there is no collision between the control devices for controlling thesink device or the source device.

In addition, when a use environment for a device is a public place,there is no required security level because the device cannot becontrolled, or, a security problem occurrence is less likely even if thedevice is controlled by a plurality of control devices.

However, devices that are shared by specific groups do not have therequired security level in situations where security problems do notoccur. However, this is not the case for certain situations (e.g., asecret meeting, an announcement of a non-disclosed product, etc.).

In this connection, when a device shared by a plurality of devices iscontrolled, an error may occur in an operation of the shared device dueto different control commands among the sharing devices. Further,security problems such as leakage of confidential data may occur.

Accordingly, the present invention provides a method for restrictingcontrol authorities of the control devices based on the requiredsecurity levels for the controlled device and thus setting controllableoperations for the controlled device differently based on the controllevels since the required security levels for the controlled device aredifferent based on the use environments for the controlled device.

FIG. 25 is a diagram illustrating an example of control levels based ondevice use environment types according to one embodiment of the presentinvention.

Referring to FIG. 25, control levels and priories are different based ondevice use environment types. Accordingly, controlled operations underthe control device are restricted according to the control levels.

Specifically, the control levels assigned to the control devices may beclassified into high, normal, or limited levels. The controlledoperations corresponding to the high, normal, or limited control levelsrespectively are as follows:

High: the control device controls all operations for the controlleddevice, including enabling and disabling the service;

Normal: the control device controls operations (for example, servicestart and stop, volume adjustment, etc.) for the controlled device foroperating the service, excluding enabling and disabling the service; and

Limited: the control device controls only receipt of the service by thecontrolled device. That is, the control device cannot control anyoperation of the source device providing the service or the sink deviceoperating the service.

As for a controlled device used in the personal environment, there is alow probability of collision between the control devices for thecontrolled device, and a user of the control devices must be able tocontrol all the functions of the controlled device via the controldevices. Thus, as for the controlled device used in the personalenvironment, the control levels assigned to the control devices may beset as the high level.

As for the controlled device used in a public place, the low controllevel may be assigned to the control devices for the controlled devicebecause the controlled device must provide the same service to a largenumber of users.

As for the controlled device shared in a specific group, a high securitylevel may be required depending on the specific situation, as describedabove with reference to FIG. 24. Thus, the high or normal security levelmay be assigned to the control device for the controlled device,depending on the required security levels thereof.

Further, each of the security levels may have each assigned controlpriority thereto among the control devices. Thus, the control devicesmay have control priorities based on the security levels.

For example, as shown in FIG. 25, a priority 1 may be set for the highcontrol level, a priority 2 for the normal control level, and a priority3 for the limited control level.

The control device may control a specific device based the controlpriority assigned thereto. For example, the control device whose controllevel is set to be high may control the specific device prior to acontrol device whose control level is set to be normal.

In this way, by setting the controlled operations among the controldevices differently based on the use environment of the controlleddevice, errors due to different control commands among the controldevices may be be prevented when there are a plurality of the controldevices.

Furthermore, by setting only the control level of the specific controldevice to be high, there is an effect that the probability of occurrenceof a security problem in the controlled device shared by the specificgroup may be reduced.

FIG. 26 is a conceptual diagram showing accesses of a control device toa source device or a sink device according to one embodiment of thepresent invention.

In one embodiment, the access from the control device to the service(s)provided by the source device has a tendency to focus onunicast/broadcast. Further, the access of the control device to theservice(s) provided by the sink device tends to focus on the environment(e.g., Personal/Shared/Public) in which the sink device is used.

In addition, the source device may set the control levels for thecontrol device differently based on the environments in which the sourcedevice is used.

Referring to a left table of FIG. 26, the source device (e.g., a musicsource device, TV, etc.) used in the personal environment may set acontrol level for the control device to be high. Further, the sourcedevice (e.g., a music source device, TV, door bell, etc.) used in theshared environment may set a control level for the control device to benormal. In this case, there may be another remote controller withexclusive access. Moreover, the source device (e.g., for smoke alarm,public announcement, commercial advertisement, etc.) used in the publicenvironment may set a control level for the control device to be alimited level.

The control device may control operations of the source device based onthe control level set by the source device itself.

Referring to a right table of FIG. 26, the sink device (e.g., a hearingaid, headset, speaker(s), etc.) used in the personal environment may seta control level for the control device to be high. Further, the sinkdevice (e.g., a party mode speaker (s)) used in the shared environmentmay set a control level for the control device to be normal. In thiscase, there may be another remote controller with exclusive access.Moreover, the sink device (e.g., a dedicated speaker) used in the publicenvironment may set a control level for the control device to be alimited level.

FIG. 27 is a diagram illustrating an example of connections from anaudio source to an audio sink via an audio controller according to oneembodiment of the present invention

Referring to FIG. 27, a source device and a sink device, each having adifferent use environment, may be connected via a control device. Thus,the control device may control the source device and the sink device,respectively.

Specifically, as shown in FIG. 26, the source device may be used inpersonal, shared, and public environments, while the sink device may bebe used in personal and shared environments.

The source device used in each environment may be connected to the sinkdevice used in each environment via the control device.

For example, the source device used in a personal environment may beconnected to the sink device used in a personal environment or a sharedenvironment via the control device.

A following Table 1 is an example of connections between the sourcedevice and the sink device via the control device shown in FIG. 27.

TABLE 1 Connection combinations Use examples 1-AC-1 To control a sinkdevice or source (Personal source-AC-Personal sink) device in a personalspace 1-AC-2 For a party host to control (Personal source-AC-Sharedsink) multi-speakers (sink devices) 2-AC-1 To connect to a desiredsource (Shared source-AC-Personal sink) device to receive audio in theconference room 2-AC-2 To receive audio streams (Shared source-AC-Sharedsink) by connecting TV in a living room to a speaker 3-AC-1 To receiveannouncement via (Public source-AC-Personal sink) a personal earphone atairport 3-AC-2 To receive audio streams via multi- (Publicsource-AC-Shared sink) speakers in a car in a car theater

In this connection, the control device may be assigned a control levelfor controlling the source device and a control level for controllingthe sink device separately.

For example, the control level assigned to the control device forcontrolling the sink device used in the personal environment may be setto be high. The control level assigned to the same control device forcontrolling the sink device used in the shared environment may be set tobe a limited level.

There may be three methods as follows for the control device to obtainthe control level for controlling the sink device or the source device.

In a first approach, the control device transmits its desired controllevel to the source device (or sink device), and, then, the sourcedevice (or sink device) sets the transmitted control level to thecontrol level for the control device.

In a second approach, the control level for the control device is presetas a specific control level in the source device (or sink device). Whenthe control device requests the source device (or sink device) to setthe control level for the control device, the source device (or sinkdevice) sets the control level for the control device to the presetspecific control level.

In a third approach, the control level for the control device is presetas a specific control level in the source device (or sink device). Thecontrol device transmits its desired control level to the source device(or sink device).

The source device (or sink device) determines the control level for thecontrol device by comparing the preset specific control level with thedesired control level transmitted from the control device, and, then,sets the determined control level to the control level for the controldevice.

Hereinafter, each of methods for setting the control level for thecontrol device by a first device as the source device (or sink device)will be described in detail.

FIG. 28 is a flowchart illustrating an example of a method for setting acontrol level for an audio controller according to one embodiment of thepresent invention.

Referring to FIG. 28, the control device 400 transmits a desired controllevel to the first device 200, and, then, the first device 200 sets thecontrol level for the control device to the transmitted desired controllevel.

Specifically, when the control device 400 desires to control the firstdevice 200, a control level indicating control authority for the firstdevice 200 must be set in the first device 200.

The control level refers to a level for limiting operations for thefirst device 200 which can be controlled by the control device 400. Thecontrol device 400 may control operations for the first device 200 basedon the control level assigned thereto.

The control level may be classified into the high level, the normallevel, and the limited level based on controllable operations for thecontrolled device, as shown in FIG. 15. The control prioritiesindicating control orders among the control devices may be assigned tothe control devices based on the control levels thereof respectively.

The control device 400 transmits a request message to the first device200 for the first device 200 to set a control level for controlling thefirst device 200 by the control device 400 (S28010).

In this connection, the request message may include informationindicating a specific control level determined by the control device 400based on the use environments for the first device 200.

In this connection, the use environments may include personal, shared,or public environments as discussed above with reference to FIG. 24 andFIG. 25.

Upon receiving the request message including the information indicatingthe determined control level from the control device 400, the firstdevice 200 sets the control level for the control device 400 to thereceived specific control level.

Thereafter, the first device 200 transmits a response message to thecontrol device 400 to notify the control device 400 that the controllevel for the control device 400 has been set to the specific controllevel (S28020).

Upon receiving the response message from the first device 200, thecontrol device 400 may be aware that the control level for the controldevice 400 has been set to the specific control level. Thus, the controldevice 400 controls operations for the first device 400 based on the setspecific control level.

FIG. 29 is a flowchart illustrating another example of a method forsetting a control level for an audio controller according to oneembodiment of the present invention.

Referring to FIG. 29, the control device 400 requests the first device200 to set the control level for the control device 400, and, then, thefirst device 200 sets the control level for the control device to apreset control level.

Specifically, the first device 200 pre-sets the control levels for thecontrol devices in advance.

For example, when the specific condition is satisfied, the control levelfor the control device may be set to a specific control level.

In this connection, the first device may set the control level for thecontrol devices to the specific control level under following specificconditions:

First, after the first device 200 is reset and initialized, the controldevice connected to the first device 200 for the first time may beassigned a high control level.

Second, a specific password may be set for each control level (forexample, OOB (Out Of Band) type). The control levels may be set forcontrol devices respectively based on the passwords input from thecontrol devices. For example, a control device that has input a firstpassword may be assigned a high control level, and a control device thathas input a second password may be assigned a limited control level.

Subsequently, the control device 400 transmits a request message to thefirst device 200 for the first device 200 to set a control level forcontrolling the first device 200 by the control device 400 (S29010).

In this connection, the request message may include informationindicating a first control level determined by the control device 400based on the use environment for the first device 200.

In this connection, the use environments may include personal, shared,or public environments as discussed above with reference to FIG. 24 andFIG. 25.

Upon receiving the request message including the information indicatingthe determined control level from the control device 400, the firstdevice 200 sets the control level for the control device 400 to thepreset control level.

For example, when the control device 400 satisfies a predeterminedcondition preset in the first device 200, the control level for thecontrol device 400 may be set to a specific control level according to aspecific condition.

In this connection, the specific control level may not be the same asthe first control level.

Thereafter, the first device 200 transmits a response message to thecontrol device 400 to notify the control device 400 that the controllevel for the control device 400 has been set to the specific controllevel (S29020).

Upon receiving the response message from the first device 200, thecontrol device 400 may be aware that the control level for the controldevice 400 has been set to the specific control level. Thus, the controldevice 400 controls operations for the first device 400 based on the setspecific control level.

FIG. 30 is a flowchart illustrating still another example of a methodfor setting a control level for an audio controller according to oneembodiment of the present invention.

Referring to FIG. 30, the control device 400 requests the first device200 to set a control level for the control device 400. In a response,the first device 200 compares a preset control level with the requestedcontrol level. Based on the comparison, the first device 200 determinesa control level for the control device 400 to be set.

Specifically, the first device 200 presets a control level for thecontrol device 400 in advance. This present control level may bereferred to as a first control level.

The control device 400 transmits a request message to the first device200 for the first device 200 to set a control level for controlling thefirst device 200 by the control device (S30010).

In this connection, the request message may include informationindicating a second control level determined by the control device 400based on the use environment for the first device 200.

In this connection, the use environments may include personal, shared,or public environments as discussed above with reference to FIG. 24 andFIG. 25.

Upon receiving the request message including the information indicatingthe determined control level from the control device 400, the firstdevice 200 determines the control level for the control device 400 as aspecific control level. Then, the first device 200 sets the controllevel for the control device 400 to the specific control level.

In this connection, the specific control level may be determined vianegotiation between the first control level and the second controllevel.

Specifically, the first device 200 compares the first control level forthe control device 400 preset by the first device 200 with the secondcontrol level that is determined by the control device 400.

When the first control level is higher than the second control level,the first device 200 sets a control level for the control device 400 tothe second control level or a control level lower than the secondcontrol level.

To the contrary, when the first control level is lower than the secondcontrol level, the first device 200 sets the control level for thecontrol device 400 to the first control level or a control level lowerthan the first control level.

Thereafter, the first device 200 transmits a response message to thecontrol device 400 to notify the control device 400 that the controllevel for the control device 400 has been set to the specific controllevel (S30020).

Upon receiving the response message from the first device 200, thecontrol device 400 may be aware that the control level for the controldevice 400 has been set to the specific control level. Thus, the controldevice 400 controls operations for the first device 400 based on the setspecific control level.

Using the above-defined method, the control level for the control devicemay be set to the specific control level based on the use environmentfor the controlled device and the characteristics of the control device.

According to the above-defined methods for controlling the device usingBluetooth technology, the control device may control the source deviceand/or the sink device.

According to the present invention, by setting the control levels forthe control device differently based on the use environment for thesource device and/or the sink device, the controllable operations of thesource device and/or the sink device may be restricted for each controldevice.

Further, according to the present invention, there is an effect that itis possible to prevent errors that may occur due to different controlcommands from the multiple control devices by restricting thecontrollable operations of the source device and/or the sink device foreach of the control devices.

Moreover, according to the present invention, there is also provided aneffect of preventing a security issue that may occur under the controlof a plurality of the control devices by restricting the controllableoperations of the source device and/or the sink device for each controldevice.

Each of the steps described in the above embodiments may be performed bya hardware/processor. Each module/block/unit described in the aboveembodiments may be operated as a hardware/processor. Further, themethods proposed by the present invention may be executed using codes.The codes may be written to a storage medium readable by the processorand thus, may be read by the processor provided in the device.

For convenience of illustration, the drawings have been individuallydescribed. However, it is possible to combine the embodiments describedin the respective drawings to design a new embodiment. The device andmethod according to the present invention are not limited to theconfiguration and method of the embodiments described above. Rather, allor some of the embodiments described above are selectively combined suchthat the embodiments may be modified.

Moreover, it is possible to implement the methods proposed by thepresent invention using codes readable by a processor and stored in aprocessor-readable storage medium, where the processor and medium may beprovided in a network device. The processor-readable storage mediumincludes all kinds of storage devices in which data that can be read bythe processor is stored. Examples of the storage medium readable by theprocessor include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppydisk, an optical data storage device and the like. Examples of thestorage medium readable by the processor may include a form of a carrierwave for transmission over the Internet. In addition, theprocessor-readable recording medium may be distributed overnetwork-connected computer systems so that the codes readable by theprocessor may be stored and executed in a distributed fashion.

It is to be understood that while the present invention has beenparticularly shown and described with reference to the exemplaryembodiments thereof, the invention is not limited to the disclosedexemplary embodiments. On the contrary, it will be understood by thoseskilled in the art that various modifications may be made withoutdeparting from the spirit and scope of the present invention.

It is understood by those skilled in the art that various variants andalternatives may be selected in the present invention without departingfrom the spirit or scope of the present invention. Accordingly, it isintended that the present invention covers the modifications andvariations when they come within the scope of the appended claims andtheir equivalents.

In the present specification, a reference has been made to all thedevice and method inventions. In this connection, the descriptions ofthe device and method inventions may be applied to each other in asupplementing manner.

What is claimed is:
 1. A method for controlling a first device by acontrol device using Bluetooth Low Energy (BLE) technology in a wirelesscommunication system, the method comprising: establishing a connectionwith the first device via the BLE technology; configuring a controlchannel for providing an audio streaming service by controlling anisochronous channel; configuring the isochronous channel in a specificconnection state, wherein the isochronous channel is used fortransmitting and receiving audio data of the audio streaming service;and controlling a specific operation of the first device related to theaudio streaming service based on a specific control level, when acontrol level is determined to be the specific control level, whereinthe control level is information for control authority for controllingthe first device, wherein the specific control level is determined basedon a required security level for the first device, and wherein thespecific operation is restricted based on the specific control level. 2.The method of claim 1, further comprising: transmitting a requestmessage to the first device requesting to set the control level of thecontrol device to the specific control level; and receiving from thefirst device a response message to inform that the control level of thecontrol device is set to the specific control level.
 3. The method ofclaim 1, further comprising: transmitting a request message to the firstdevice requesting a control level of the control device; and receivingfrom the first device a response message to inform that the controllevel of the control device is set to the specific control level.
 4. Themethod of claim 1, further comprising: transmitting a request message tothe first device requesting to set the control level of the controldevice to a first control level; and receiving a response message fromthe first device to inform that the control level of the control deviceis set to the specific control level, wherein the specific control levelis determined based on the first control level, and wherein the specificoperation according to the specific control level is an operation equalto or more restrictive than the specific operation according to thefirst control level.
 5. A control device to control a first device usingBluetooth Low Energy (BLE) technology in a wireless communicationsystem, the control device comprising: a transceiver configured tocommunicate with the first device in a wired or wireless manner; and aprocessor operatively coupled to the transceiver, wherein the processoris configured to: establish a connection with the first device via theBLE technology; configure a control channel for providing an audiostreaming service by controlling an isochronous channel; configure theisochronous channel in a specific connection state, wherein theisochronous channel is used for transmitting and receiving audio data ofthe audio streaming service; and control a specific operation of thefirst device related to the audio streaming service based on a specificcontrol level, when a control level is determined to be the specificcontrol level, wherein the control level is information for controlauthority for controlling the first device, wherein the specific controllevel is determined based on a required security level for the firstdevice, and wherein the specific operation is restricted based on thedetermined the specific control level.
 6. The device of claim 5, whereinthe processor is further configured to: control the transceiver totransmit a request message to the first device requesting to set thecontrol level of the control device to the specific control level; andcontrol the transceiver to receive from the first device a responsemessage to inform that the control level of the control device is set tothe specific control level.
 7. The device of claim 5, wherein theprocessor is further configured to: control the transceiver to transmita request message to the first device requesting a control level of thecontrol device; and control the transceiver to receive from the firstdevice a response message to inform that the control level of thecontrol device is set to the specific control level.
 8. The device ofclaim 5, wherein the processor is further configured to: control thetransceiver to transmit a request message to the first device requestingto set the control level of the control device to a first control level;and control the transceiver to receive from the first device a responsemessage to inform that the control level of the control device is set tothe specific control level, wherein the specific control level isdetermined based on the first control level, and wherein the specificoperation according to the specific control level is an operation equalto or more restrictive than the specific operation according to thefirst control level.